//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright 2007 CORE Solutions Limited
// All rights reserved.
// PROPRIETARY AND CONFIDENTIAL INFORMATION.
// Use is subject to license terms.
//
// FUNCTION ID      :   FACT_AUDIT
// AUTHOR           :   Ray Guo 
// DATE CREATE      :   2007/09/10
// DESCRIPTION      :   a VO file for the function, FACT_AUDIT
//                  :   
//                  :   
//                  :   
//
// MODIFICATION HISTORY:
// DATE         AUTHOR          VERSION NO.         COMMENT
// -----------  --------------  ------------------  -------------------
// 2007/09/10   Ray Guo         1.0                 source is generated.
//
//
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

package com.erp.app.compliance.factAudit.vo;

import java.math.BigDecimal;
import java.sql.Date;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Collection;

import com.erp.framework.model.vo.SimpleSearchMaintStyleVo;
import com.erp.framework.model.pk.SimpleSearchMaintStylePk;
import com.erp.app.compliance.factAudit.pk.FactAuditAttachPk;
import com.erp.framework.types.CustomBigDecimal;
import com.erp.framework.types.CustomBigInteger;
import com.erp.framework.types.CustomSqlDate;
import com.erp.framework.types.CustomTimestamp;
import com.erp.framework.types.CustomUtilDate;

/**
* <p>A <strong>VO</strong>(Value Object) is a JavaBean which provides property
* getter and setter methods for all of the bean properties, and implements
* <code>Serializable</code>, as required by the JavaBean specification
* The main purpose for this class is to store the data retrieved from the database,
* and the converted data from the web browsers.
*
* @author          Ray Guo 
* @version 1.0     2007/09/10
* @since           FrameWork 1.0
*
*/
public class FactAuditAttachVo extends SimpleSearchMaintStyleVo {

	//DB Table Name: T_FACT_AUDIT_ATTACH

	//PK Attributes
	private String companyCode;                                                                        //DB Column Name: COMPANY_CODE
	private String auditNo;                                                                            //DB Column Name: AUDIT_NO
	private CustomBigInteger attachLineNo;                                                             //DB Column Name: LINE_NO

	//Other Attributes
	private String attachAttachDesc;                                                                   //DB Column Name: ATTACH_DESC
	private CustomBigInteger attachAttachLineNo;                                                       //DB Column Name: ATTACH_LINE_NO
	private String createUser;                                                                         //DB Column Name: CREATE_USER
	private Timestamp createDate;                                                                      //DB Column Name: CREATE_DATE
	private String updateUser;                                                                         //DB Column Name: UPDATE_USER
	private Timestamp updateDate;                                                                      //DB Column Name: UPDATE_DATE
	
	
	private String attachOldDesc;
	private String attachContentType;
	private byte[] attachAttachment;
	private String attachFileName;
	private String attachActionType;
	
	

	public String getAttachActionType() {
		return attachActionType;
	}

	public void setAttachActionType(String attachActionType) {
		this.attachActionType = attachActionType;
	}

	public byte[] getAttachAttachment() {
		return attachAttachment;
	}

	public void setAttachAttachment(byte[] attachAttachment) {
		this.attachAttachment = attachAttachment;
	}

	public String getAttachContentType() {
		return attachContentType;
	}

	public void setAttachContentType(String attachContentType) {
		this.attachContentType = attachContentType;
	}	

	public String getAttachFileName() {
		return attachFileName;
	}

	public void setAttachFileName(String attachFileName) {
		this.attachFileName = attachFileName;
	}

	public String getAttachOldDesc() {
		return attachOldDesc;
	}

	public void setAttachOldDesc(String attachOldDesc) {
		this.attachOldDesc = attachOldDesc;
	}

	/**
	* Stores the detail child names by the fully-qualified java class path.
	*
	* @author     Ray Guo 
	* @since      Framework 1.0
	*/
	protected  void setChildTypesName() {
		//this.childTypesName=new String[2];
		//this.childTypesName[0]="com.erp.app.form.beans.FormApprovalListVo";
		//this.childTypesName[1]="com.erp.app.form.beans.FormAttachmentVo";
	}

	/**
	* Stores the table schema name by the fully-qualified java class path.
	*
	* @author     Ray Guo 
	* @since      Framework 1.0
	*/
	protected void setTableSchemaName() {
		this.tableSchemaName="com.erp.app.compliance.factAudit.schema.FactAuditAttachSchema";
	}

	/**
	* Stores the detail child table schema names by the fully-qualified java class path.
	*
	* @author     Ray Guo 
	* @since      Framework 1.0
	*/
	protected  void setChildTableSchemaNames() {
		//this.childTableSchemaNames=new String[2];
		//this.childTableSchemaNames[0]="com.erp.app.form.beans.FormApprovalListSchema";
		//this.childTableSchemaNames[1]="com.erp.app.form.beans.FormAttachmentSchema";
	}

	/**
	* Stores the DAO name by the fully-qualified java class path.
	*
	* @author     Ray Guo 
	* @since      Framework 1.0
	*/
	protected void setDaoName() {
		this.daoName="com.erp.app.compliance.factAudit.dao.FactAuditAttachDao";
	}

	/**
	* Returns the primary key for this class.
	* @return      primary key of this class
	*
	* @author     Ray Guo 
	* @since      Framework 1.0
	*/
	public SimpleSearchMaintStylePk getSearchMaintStylePk() {
		return new FactAuditAttachPk(this.companyCode, this.auditNo, this.attachLineNo);
	}

	/**
	* Converts to a string representing the data in this object.
	* A new <code>String</code> object is allocated and initialized to 
	* contain the character sequence currently represented by this 
	* object. This <code>String</code> is then returned. Subsequent 
	* changes to this object do not affect the contents of the 
	* <code>String</code>. 
	*
	* @return     a string representation of the object.
	* @see        java.lang.Object#toString()
	* @author     Ray Guo 
	* @since      Framework 1.0
	*/
	public String toString() {
		String pkStr = "PK: {companyCode = " + this.companyCode
			+ "\n, auditNo = " + this.auditNo
			+ "\n, attachLineNo = " + this.attachLineNo + "}\n";

		String colStr = "COL: {attachAttachDesc = " + this.attachAttachDesc
			+ "\n, attachAttachLineNo = " + this.attachAttachLineNo
			+ "\n, createUser = " + this.createUser
			+ "\n, createDate = " + this.createDate
			+ "\n, updateUser = " + this.updateUser
			+ "\n, updateDate = " + this.updateDate + "}\n";

		return "FactAuditAttachVo.toString() is:\n" + pkStr + colStr;
	}

	////////////////////////////////////////////////////////////////////////////////
	//Generated Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////

	public String getCompanyCode() {
		return this.companyCode;
	}

	public String getAuditNo() {
		return this.auditNo;
	}

	public CustomBigInteger getAttachLineNo() {
		return this.attachLineNo;
	}

	public String getAttachAttachDesc() {
		return this.attachAttachDesc;
	}

	public CustomBigInteger getAttachAttachLineNo() {
		return this.attachAttachLineNo;
	}

	public String getCreateUser() {
		return this.createUser;
	}

	public Timestamp getCreateDate() {
		return this.createDate;
	}

	public String getUpdateUser() {
		return this.updateUser;
	}

	public Timestamp getUpdateDate() {
		return this.updateDate;
	}

	public void setCompanyCode(String companyCode) {
		this.companyCode = companyCode;
	}

	public void setAuditNo(String auditNo) {
		this.auditNo = auditNo;
	}

	public void setAttachLineNo(CustomBigInteger attachLineNo) {
		this.attachLineNo = attachLineNo;
	}

	public void setAttachAttachDesc(String attachAttachDesc) {
		this.attachAttachDesc = attachAttachDesc;
	}

	public void setAttachAttachLineNo(CustomBigInteger attachAttachLineNo) {
		this.attachAttachLineNo = attachAttachLineNo;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	public void setCreateDate(Timestamp createDate) {
		this.createDate = createDate;
	}

	public void setUpdateUser(String updateUser) {
		this.updateUser = updateUser;
	}

	public void setUpdateDate(Timestamp updateDate) {
		this.updateDate = updateDate;
	}

	////////////////////////////////////////////////////////////////////////////////
	//Other Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////


}